Skip to main content

mobile OS stucture

Structure of Mobile Operating Systems

A mobile OS serves as a software platform upon which application programs run on mobile devices such as PDAs, cellular phones, and smartphones. Here's an overview of the structure of mobile operating systems:

mobile architecture

The main components of android architecture are following:-

  • Applications
  • Application Framework
  • Android Runtime
  • Platform Libraries
  • Linux Kernel

Applications Layer

Applications stays the top layer of the Android architecture. It includes pre-installed applications like home, contacts, camera, gallery, etc., as well as third-party applications downloaded from the Play Store, such as chat applications and games. These applications run within the Android runtime, utilizing classes and services provided by the application framework.

Application Framework

The Application Framework provides essential classes for creating Android applications. It offers a generic abstraction for hardware access and aids in managing the user interface with application resources. Various services provided by the Application Framework include:

  • Activity Manager
  • Notification Manager
  • View System
  • Package Manager

These services facilitate the development of applications according to specific requirements.

Application Runtime

The Android Runtime environment is a crucial component of Android architecture. It consists of core libraries and the Dalvik virtual machine (DVM), serving as the foundation for the application framework and empowering applications through core libraries. Key features include:

  • Dalvik Virtual Machine (DVM): Optimized for Android, it efficiently runs multiple instances and relies on the Linux kernel for threading and memory management.
  • Core Libraries: Enable the implementation of Android applications using standard programming languages like Java or Kotlin.

Platform Libraries

Platform Libraries encompass various C/C++ core libraries and Java-based libraries essential for Android development. These include:

  • Media Library: Supports playing and recording audio and video formats.
  • Surface Manager: Manages access to the display subsystem.
  • SGL and OpenGL: APIs for 2D and 3D computer graphics.
  • SQLite: Provides database support.
  • FreeType: Supports fonts.
  • WebKit: Renders web content and simplifies page loading.
  • SSL (Secure Sockets Layer): Ensures secure communication between a web server and a browser.

Linux Kernel

The Linux Kernel forms the heart of the Android architecture. It manages device drivers (display, camera, Bluetooth, audio, memory, etc.) required during runtime and serves as an abstraction layer between device hardware and other components of the Android architecture. Key features include:

  • Security: Handles security between applications and the system.
  • Memory Management: Efficiently manages memory, facilitating app development.
  • Process Management: Manages processes and resource allocation.
  • Network Stack: Handles network communication effectively.
  • Driver Model: Ensures proper functioning of applications on devices by integrating drivers into the Linux build.

Introduction to Development Environment

  • Native Apps:
    • Installed directly onto a device from its associated app store.
    • Platform-dependent, designed for specific operating systems.
    • Pros:
      • Better performance
      • Easier development with platform SDKs
      • Better distribution and monetization through app stores
    • Cons:
      • Increased development time and costs
      • Higher maintenance costs
      • App store content restrictions and fees
  • HTML5 Apps:
    • Delivered through an HTML5-enabled browser.
    • Platform-independent, accessible via any web browser.
    • Pros:
      • Platform independence
      • Easier updates and faster development
      • Cheaper development costs
      • No content restrictions or app store fees
    • Cons:
      • Poorer performance, especially with heavy graphics
      • Device fragmentation within web browsers
      • Technical limitations and limited monetization opportunities
  • Hybrid Apps:
    • hybrid mobile apps combine elements of web apps and native apps.
    • Pros:
      • Cross-Platform Compatibility
      • Faster Development Time and Lower Costs
      • Access to Native Device Features
    • Cons:
      • Performance Limitations
      • User Experience Discrepancies
      • Dependency on Third-Party Frameworks
      • Limited Access to Platform-Specific Features

Introduction to Android

  • Description: A platform and operating system for mobile devices based on the Linux OS. Allows developers to design applications in a Java-like language using Google-developed Java libraries.
  • API Levels and Versions: Android's version history began with the release of Android beta in November 2007. The first commercial version, Android 1.0, was released in September 2008. Android is under ongoing development by Google and the Open Handset Alliance (OHA), with numerous updates to its base operating system over time.

Android Version History and Comparison with Other OSes

Android Version History:

VersionSDK / API levelVersion codeCodenameCumulative usageYear
Android 15 DEVLevel 35VANILLA_ICE_CREAMVanilla Ice Cream 2TBD
Android 14Level 34UPSIDE_DOWN_CAKEUpside Down Cake 212.6%2023
Android 14targetSdk will need to be 34+ for new apps and app updates by August 31, 2024.2023
Android 13Level 33TIRAMISUTiramisu 241.4%2022
Android 13targetSdk must be 33+ for new apps and app updates since August 31, 2023.2022
Android 12Level 32 Android 12LS_V2Snow Cone 258.5%
Android 12Level 31 Android 12SSnow Cone 22021
Android 11Level 30RRed Velvet Cake 275.0%2020
Android 10Level 29QQuince Tart 284.0%2019
Android 9Level 28PPie90.0%2018
Android 8Level 27 Android 8.1O_MR1Oreo92.1%2017
Android 8Level 26 Android 8.0OOreo95.1%
Android 7Level 25 Android 7.1N_MR1Nougat95.6%2016
Android 7Level 24 Android 7.0NNougat97.0%
Android 6Level 23MMarshmallow98.4%2015
Android 5Level 22 Android 5.1LOLLIPOP_MR1Lollipop99.2%
Android 5Level 21 Android 5.0LOLLIPOP , LLollipop99.5%2014
Android 5Jetpack Compose requires a minSdk of 21 or higher. Google Play services v23.30.99+ (August 2023) drops support for API levels below 21.2014
Android 4Level 20 Android 4.4W 3KITKAT_WATCHKitKat99.8%
Android 4Level 19 Android 4.4KITKATKitKat2013
Android 4Jetpack / AndroidX libraries require a minSdk of 19 or higher since October 2023. Google Play services v21.33.56+ (July 2021) drops support for API levels below 19.2013
Android 4Level 18 Android 4.3JELLY_BEAN_MR2Jelly Bean99.8%
Android 4Level 17 Android 4.2JELLY_BEAN_MR1Jelly Bean99.8%2012
Android 4Level 16 Android 4.1JELLY_BEANJelly Bean99.8%
Android 4Google Play services v14.8.39+ (December 2018) drops support for API levels below 16.
Android 4Level 15 Android 4.0.3 – 4.0.4ICE_CREAM_SANDWICH_MR1Ice Cream Sandwich99.9%2011
Android 4Level 14 Android 4.0.1 – 4.0.2ICE_CREAM_SANDWICHIce Cream Sandwich2011
Android 4Earlier Jetpack / AndroidX libraries required a minSdk of 14 or higher.2011
Android 3Level 13 Android 3.2HONEYCOMB_MR2HoneycombNo data
Android 3Level 12 Android 3.1HONEYCOMB_MR1HoneycombNo data
Android 3Level 11 Android 3.0HONEYCOMBHoneycombNo data
Android 2Level 10 Android 2.3.3 – 2.3.7GINGERBREAD_MR1GingerbreadNo data
Android 2Level 9 Android 2.3.0 – 2.3.2GINGERBREADGingerbreadNo data2010
Android 2Level 8 Android 2.2FROYONo data2010
Android 2Level 7 Android 2.1ECLAIR_MR1No data2010
Android 2Level 6 Android 2.0.1ECLAIR_0_1No data2009
Android 2Level 5 Android 2.0ECLAIRNo data
Android 1Level 4 Android 1.6DONUTNo data2009
Android 1Level 3 Android 1.5CUPCAKENo data2009
Android 1Level 2 Android 1.1BASE_1_1No data2009
Android 1Level 1 Android 1.0BASENo data2008

Pros of Android:

  • Open Source: Android is an open-source operating system, allowing for customization and flexibility.
  • Wide Range of OEMs: Numerous Original Equipment Manufacturers (OEMs) produce Android devices, offering diverse options to consumers.
  • Google Support: Google provides extensive support for Android users, solving their problems and offering various services.
  • Large App Selection: Google Play Store offers a vast selection of apps, catering to diverse user needs.

Cons of Android:

  • Security Concerns: Android is not as secure as iOS and Windows OS, making it susceptible to malware and other security threats.
  • App Store Clutter: Google Play Store has a large number of apps, but many of them are of low quality or not frequently downloaded, leading to clutter and confusion.
  • App Compatibility Issues: Compatibility issues may arise due to the fragmentation of Android devices running different OS versions.
  • Performance Degradation: Over time, Android devices may become slow in operation, affecting user experience.
  • Battery Consumption: Android OS and apps may consume battery quickly, leading to shorter battery life.

Comparison of Android with Other OSes:

  • App Availability: Android has the largest number of apps in its store compared to Apple's App Store and Windows Store.
  • Feature Innovation: Android introduced features like Wi-Fi Direct, multiple user accounts, and screen mirroring support ahead of other OSes.
  • OEM Diversity: Android has over 100 OEMs, offering a wide range of device options, while iOS is limited to Apple Inc. and Windows has fewer OEMs.
  • Open Source vs. Closed Source: Android is open source and customizable, whereas iOS and Windows are closed source, limiting customization options.